DynamoDBのTTLがハッシュキーに設定できるか試してみた
DynamoDBのTTL(Time to Live)機能は、レコード毎にデータの有効期限を指定でき、その有効期限を過ぎるとデータが自動削除されます。 これは任意のカラムを設定しますが、ハッシューキーが設定できるか試してみました。
DynamoDBのTTL(Time to Live)機能を使えば、期限が切れたデータは自動削除されます。 そのためには特定のカラムにUnixtimeを設定する必要がありますが、そこでふと気になりました。
「ハッシュキーに設定できるんだろうか?」と。
試してみました。
TTL(Time to Live)について
詳しくは下記をご覧ください。
やってみた
DynamoDBテーブルを作成
test-ttl
を作成します。
データを追加
次のデータを追加します。
{ "deadlineTimestamp": 1586250000, "datetime": "2020-04-07T18:00:00", "message": "This is a pen." }
TTLを設定
TTL属性
としてハッシュキーであるdeadlineTimestamp
を設定します。
未来の時間でプレビューしたところ、削除される項目の例にも登場しました。この時点でもう確実ですね。
しばらく待つと、削除された
しばらく待つとデータが削除されました。結果として、TTLをハッシュキーに設定できました。
さいごに
ふと気になって試してみました。十中八九、大丈夫だとは思っていましたが、無事に削除されてよかったです。